package ${info.mapperPackage};

import ${info.baseMapperPackage}.${info.baseMapper};
import ${info.entityPackage}.${info.entityName};
import ${info.entityPackage}.${info.criteriaName};
import java.util.List;

import org.apache.ibatis.annotations.Param;

/**
* @author abel.lin
* @date_time ${.now?string("yyyy-MM-dd HH:mm")}
* @description
*/
public interface ${info.mapperName} extends ${info.baseMapper}<${info.entityName}, ${info.criteriaName}>{

    int countByExample(${info.criteriaName} example);
    
    int deleteByExample(${info.criteriaName} example);
    
    int deleteByPrimaryKey(${tableKey.javaType} id);
    
    int insert(${info.entityName} record);
    
    int insertSelective(${info.entityName} record);
    
    List<${info.entityName}> selectByExample(${info.criteriaName} example);

    ${info.entityName} selectByPrimaryKey(${tableKey.javaType} id);

    int updateByExampleSelective(@Param("record") ${info.entityName} record, @Param("example") ${info.criteriaName} example);

    int updateByExample(@Param("record") ${info.entityName} record, @Param("example") ${info.criteriaName} example);

    int updateByPrimaryKeySelective(${info.entityName} record);

    int updateByPrimaryKey(${info.entityName} record);
}